[RFC 0052] Update additional GenAI fields #2532
Conversation
🤖 GitHub commentsExpand to view the GitHub comments
Just comment with:
|
|
Documentation changes preview: https://docs-v3-preview.elastic.dev/elastic/ecs/pull/2532/reference/ |
8ece5e6 to
9b177e4
Compare
1b04b05 to
22cdf78
Compare
trisch-me
left a comment
There was a problem hiding this comment.
as stage 2 is a final stage, please update all examples and generate all fields
|
I've updated this PR now that there have been recent changes that moves us toward using flattened fields (pending merge).
In addition, based on previous discussions, it seems that
See comment.
See comment
At the time this RFC was drafted, neither
There are tradeoffs, which I've captured here
See comment
See comment This trade-off is something we will need to accept given the OTel compatibility requirement and lack of movement on nested support with ES|QL. |
|
Hey @susan-shu-c have you checked latest changes in OTEL for genAI fields? It might be there were some renamings or deprecations etc as we have discussed this issue long time ago. So before continuing with it I would like to be sure we are on the same page with otel definitions |
|
Hi @trisch-me all 6 fields introduced in this PR are in the newest v1.40.0 OTel with the exact same naming link |
Vale Linting ResultsSummary: 24 warnings found
|
| File | Line | Rule | Message |
|---|---|---|---|
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 23 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 25 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 25 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 29 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 39 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 42 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 44 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.Latinisms | Latin terms and abbreviations are a common source of confusion. Use 'for example' instead of 'e.g'. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
| docs/reference/ecs-gen_ai.md | 47 | Elastic.QuotesPunctuation | Place punctuation inside closing quotation marks. |
The Vale linter checks documentation changes against the Elastic Docs style guide.
To use Vale locally or report issues, refer to Elastic style guide for Vale.
…to additional-gen_ai-stage-2
kgeller
left a comment
There was a problem hiding this comment.
Thanks for the thorough investigation and write-up on the flattened vs nested decision. Before this gets to the finish line, a few things on the RFC markdown itself (rfcs/text/0052-gen_ai-additional-fields.md) that I'd like to see addressed per the RFC template:
1. Missing template sections
The ## Summary, ## Usage, and ## Scope of impact sections are currently empty or absent. Could you fill these in? Specifically:
- Summary — what is this change and why is it being made? (2–5 sentences)
- Usage — how will these fields be used in practice? This is one of the key questions reviewers evaluate per
rfcs/PROCESS.md("Does this change provide enough utility for its intended use cases?"). - Scope of impact — who and what is affected by these changes? The template asks for 2–5 sentences each on ingestion, usage, and the ECS project itself.
2. Justification for flattened without leaf fields
Since this PR was opened, #2594 (prompted by #2595) added a requirement to the RFC template for any flattened or object field without defined children to justify the choice. The pieces are already here — the Concerns section explains why nested is ruled out and the YAML examples show the expected shapes — but could you add a short paragraph in ## Fields that ties them together so it's clear the requirement was considered?
3. Consider expanding the Concerns section
Not a blocker since the PR thread serves as living documentation, but a few other things came up in review that might be worth a line or two in the Concerns section:
- Role ↔ content association loss with
flattened - Synthetic
_sourcecost under LogsDB
And one question: elastic/elasticsearch#144245 was closed in favor of an alternative approach, does that change anything for this proposal?
kgeller
left a comment
There was a problem hiding this comment.
Thanks for the updates @susan-shu-c ! This PR looks good to me.
Just an FYI since I think it's changed since your previous RFC PRs, this will still require an additional approval (we require 2 for RFCs / schema changes).
|
Are we using |
|
@trisch-me happy to add If it's in the scope of this PR, how can I incorporate removing |
… Revert if not in scope
1. What does this PR do?
2. Which ECS fields are affected/introduced?
Apr 23, 2026:
This RFC also renames the existing
gen_ai.systemfield introduced in RFC 0050 togen_ai.provider.name, following its deprecation and replacement in OTel semconv (ref). The OTel mapping relation is updated fromequivalenttomatch. The field type, level, and allowed values are unchanged.gen_ai.system→ gen_ai.provider.namegen_ai.provider.name; description updated from "product" to "provider"Changes based on OTel:
See changes introduced in OTel release: https://github.com/open-telemetry/semantic-conventions/releases/tag/v1.38.0
3. Why is this change necessary?
4. Have you added/updated documentation?
YES / NO / N/A
5. Have you built ECS and committed any newly generated files?
YES / NO
6. Have you run the ECS validation tests locally?
YES / NO
7. Anything else for the reviewers?
Please see summary of feedback and concerns about flattened vs. nested here (rfcs/text)
Commit Message